import logging

from airtest.core.api import *
import winsound
import time
import subprocess



# 设置日志等级为 INFO（默认是 DEBUG，会打印很多信息）
logging.getLogger("airtest").setLevel(logging.ERROR)

subprocess.run("adb connect 127.0.0.1:7555", shell=True)
time.sleep(2)  # 等一会确保连接成功
print("✅ 设备连接成功，继续执行脚本")

# 连接设备
connect_device("Android://")

# 播放提示音
def play_sound():
    winsound.PlaySound("alert.wav", winsound.SND_FILENAME)

# 初始化“上一次状态”，None 表示尚未记录
last_status = None

while True:
    # 滑动页面
    print("✅ 滑动页面")
    swipe(Template(r"tpl1745161919940.png", record_pos=(-0.004, 0.064), resolution=(720, 1280)), vector=[0.019, 0.4022])

    # 判断当前页面是否显示“暂无数据”
    current_status = "no_data" if exists(Template(r"tpl_no_data.png", record_pos=(-0.011, 0.389), resolution=(720, 1280))) else "normal"

    # 打印并判断是否变化
    if current_status == "no_data":
        print("❗ 检测到『暂无数据』")
    else:
        print("✅ 页面正常")

    # 如果状态发生了变化，播放提示音
    if current_status != last_status:
        print("🔔 状态变化，播放提示音")
        play_sound()

    # 更新状态
    last_status = current_status

    # 等待 10 秒
    time.sleep(10)
